/*
  将下面异步代码使用 Promise 的方法改进
  尽量用看上去像同步代码的方式
  setTimeout(function () {
    var a = 'hello'
    setTimeout(function () {
      var b = 'lagou'
      setTimeout(function () {
        var c = 'I ♥ U'
        console.log(a + b +c)
      }, 10)
    }, 10)
  }, 10)
*/
function getPromise(value, timeout) {
  return new Promise(resolve => {
    setTimeout(() => resolve(value), timeout)
  })
}

async function hello() {
  const a = await getPromise('hello', 10)
  const b = await getPromise('lagou', 10)
  const c = await getPromise('I ♥ U', 10)
  console.log(a + b + c)
}

hello()
